有关ARM架构的理解

您所在的位置:网站首页 os 缩写 有关ARM架构的理解

有关ARM架构的理解

2023-03-24 19:06| 来源: 网络整理| 查看: 265

电子化的车载控制器正在使用多种MCU。除了基本车辆的功能外,还控制了很多信息娱乐要素,在本篇文章中,我们将了解信息娱乐系统主要使用的MCU架构-ARM架构。

1.ARM概要

;图1; ARM的概要

ARM是Advanced RISC Machine的缩写,是主要用于嵌入式机器的32bit处理器。 已经广泛用于移动设备或物联网设备,是全世界众多半导体供应商具备多种产品阵容的架构。

ARM拥有高性能MPU和多种并行控制单元和通信接口,构成支持多种应用的强大架构。 但是,由于没有汽车控制器使用的CAN通信接口,所以不作为控制器使用,而是主要用于信息娱乐要素音响及导航的架构。 接下来将介绍ARM架构的发展历史和ARM产品的种类。

2.ARM的发展

ARM于1985年在Micom的供应商Acorn公司作为6502 CPU的后续产品ARM1上市。 当时ARM产品与现在的ARM不同,虽然不具备低电力、高性能的特征,但在打字机等自动化机器领域却获得了爆发性的人气。 为了继承比较成功的ARM1,后续推出改善性能的ARM2、ARM3产品,设立了ARM Holdings,正式投入商业,,开始致力于研究开发。

1998年,ARM holdings推出ARM7TDMI架构,堪称当今ARM产品的开端。 采用16bit缩略型命令Thumb,作为具备低电力、高性能特征的ARM产品,成为了ARM9、10、11的雏形。 以ARM7TDMI产品上市的1998年为起点,移动终端、PDA、高性能控制器等使用范围发展到了多种领域,伴随着嵌入式Linux的热潮,ARM确保了在SoC系列的地位。

;图2; 搭载ARM6的苹果公司的牛顿PDA

(来源:https://namu.wiki/w/Newton%20MessagePad)

ARM7TDMI的热度尚未过去的1999年,ARMv5TE产品上市。 ARMv5TE是将改进的Thumb架构和Enhanced DSP指令集添加到ARMISA的产品。 在这种Thumb的变化中,添加了少数指令,大幅提高了编译性能,耗电量减少了80%,是划时代的产品。 一年后的2000年,ARMv5TE增加了Jazelle(Java硬件加速器)扩展指令语,以ARMv5TEJ脱胎换骨面世了。

现在的ARM产品随着2005年ARM 11产品的上市,已蜕变为名为Cortex的新架构。 Cortex是进一步细分使用领域,提高产品性能的产品,分为Cortex-A、R、M。 Cortex-A被分类为高速运算Application用、Cortex-R被分类为实时(RealTime)控制用、Cortex-M被分类为低电力综合机器(Embedded)控制用,可以说在目前多种产业领域是最受欢迎的架构。

​3.ARM的结构和指令

;图3; ARM Core的结构

ARM核心:是利用ARM架构的基本原理实现处理器的核心部分。 与一般处理器的基本结构相同,由寄存器、ALU、控制装置、指令解析器和内部相互交换信息的数据路径构成。

命令解析器: 解析输入命令的设备

控制装置:控制所需的信号向内部和外部驱动的作用

ALU(Arithmetic Logic Unit):作为执行32位算术和逻辑运算的中枢,从寄存器库连接了2个内部总线,存在为了将运算结果储存为寄存器库和地址寄存器的ALU输出总线。

;图4; ARM处理器的结构

ARM 核心周围是包含缓存、MMU、Buffer、TCM、总线接口单元等周边电路的独立形态。

缓存: ARM 核心请求读取时, 用于最大限度地加快命令和数据传递的高速存储器件 。 大多数具有缓存器的处理器都有诸如 MMU 或 MPU 等控制设备来管理内存,并且支持写缓冲器以克服高速运行的核心和低速运行的系统总线之间的速度差异。

MMU具有将虚拟地址转换为物理地址的地址转换功能,可以支持多种应用程序。

AMBA : Advanced MicroController Bus Architecture

当前的 ARM Family 按照性能被划分为用于处理命令的管道形式。

ARM7TDMI:Thumb模式(16位压缩模式)、Debug、MultiPlication(32位硬件乘法器)

ARM7: fetch、 decode 和 execute 的三级管道

ARM9 : fetch 、 decode 、 execute 、 memory 和 write 的五级管道

ARM11 : 8个 阶段的管道可提高 40% 性能,是可以同时处理8个不同流程的管道。

Fetch : 从内存中读取命令并将其保存到命令管道中 。

Decode: 解读指令, 通过数据传输控制准备下一个指令 。

Execute: 从寄存器库中读取指令并生成ALU结果。

Memory:根据需要尝试访问数据存储器,将ALU结果保存在缓冲器中。

Write: 将从内存中读取的数据和 ALU 结果保存到寄存器中 。

4.汽车的ARM处理器应用方向

车载控制器用的ARM核心的OS结构

(来源:http://www.zdnet.co.kr/news/news_view.asp?artice_id=20131024141833)

正如序论中提到的那样,ARM Core在汽车产业领域所占的比重并不大。 但是,今后与电子化的汽车接轨的可能性是无穷无尽的。 ARM在辅助驾驶的便利要素或显示面板、音响编解码器方面具有很大的优势。 随着这种技术潮流,ARM控股公司已经推出了车载控制器用ARM架构ARMv8-R模型。 ARMv8-R架构以实时操作系统和Linux等通用OS整合的具有强大性能的Core开始抢占市场。可以说最具代表性的是Free Scale半导体中ARM基础Kinetis EA系列。 虽然与汽车控制器Core备受喜爱的8051和PPC Architecture相比起步较晚,但如果以现有家电和移动市场认证的架构优点为基础推出后续产品,预计将成为具有充分竞争力的ARM产品。 Kinesit EA系列是具备汽车参考设计和经验少或熟练的汽车应用工程师都能快速开发试制品的一系列易于使用的工具的解决方案。 即,大幅缩短开发时间,通过严格的汽车领域认证和PIN排列兼容的硬件扩张性,提出可以促进汽车领域ARM基础MCU的主流引进的独一无二的未来展望。

在汽车电子化接连为车载控制器开发多种架构的现在,验证的作用将更加重要。 因为随着多种车载架构的推出,验证所需的环境构筑会变得复杂,控制器的种类越多,要求的测试就越多。 今后,为了应对这种技术变化,不仅是软件领域,对硬件的理解和分析也将成为验证的必要因素。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3